import request from '@/config/axios'
import type { Dayjs } from 'dayjs';

/** vlans信息 */
export interface Vlans {
          vlanId: number; // ID
          deviceId: number; // 设备ID
          vlanVlan: number; // VLAN 的 ID（即 VLAN 号），取值范围通常是 1–4094。例如：100、200 等。这是 VLAN 的核心标识。
          vlanDomain: number; // VLAN 的路由域（Routing Domain）或 VRF（Virtual Routing and Forwarding）标识，用于多租户或复杂网络环境中区分不同逻辑网络。
          vlanName: string; // VLAN 的名称（字符串标识），如 "Servers"	、"Guest-WiFi"	、"Management"	 等，便于用户识别。
          vlanType: string; // VLAN 的类型
          vlanMtu: number; // 该 VLAN 的最大传输单元（MTU），单位为字节
  }

// vlans API
export const VlansApi = {
  // 查询vlans分页
  getVlansPage: async (params: any) => {
    return await request.get({ url: `/business/vlans/page`, params })
  },

  // 查询vlans详情
  getVlans: async (id: number) => {
    return await request.get({ url: `/business/vlans/get?id=` + id })
  },

  // 新增vlans
  createVlans: async (data: Vlans) => {
    return await request.post({ url: `/business/vlans/create`, data })
  },

  // 修改vlans
  updateVlans: async (data: Vlans) => {
    return await request.put({ url: `/business/vlans/update`, data })
  },

  // 删除vlans
  deleteVlans: async (id: number) => {
    return await request.delete({ url: `/business/vlans/delete?id=` + id })
  },

  /** 批量删除vlans */
  deleteVlansList: async (ids: number[]) => {
    return await request.delete({ url: `/business/vlans/delete-list?ids=${ids.join(',')}` })
  },

  // 导出vlans Excel
  exportVlans: async (params) => {
    return await request.download({ url: `/business/vlans/export-excel`, params })
  },
}